package juego;

import ciudad.Ciudad;
import ciudad.Esquina;
import java.util.List;
import vehiculos.Vehiculo;



public class Juego {
	Jugador jugadorEnTurno;

	public Juego() {
	}
	
        public void setJugador (Jugador jugador) {
            this.jugadorEnTurno = jugador;
        }
        
        public Jugador getJugador () {
            return this.jugadorEnTurno;
        }
        
        // Determina si el jugador ha alcanzado la esquina que funciona como
        // meta (o  llegada).
        // Pre: El jugador debe tener un vehículo asignado.
        // Post: Devuelve true si el jugador ha alcanzado la esquina de llegada.
        // Devuelve false en caso contrario.
        public boolean jugadorHaLlegadoAlaMeta() {
            Vehiculo vehiculo = jugadorEnTurno.getVehiculo();
            Esquina esquinaActual = vehiculo.getEsquinaActual();
            Esquina esquinaLlegada = 
                    jugadorEnTurno.getCiudadDeJuego().getPuntoDeLlegada();
            Ciudad ciudad = jugadorEnTurno.getCiudadDeJuego().getCiudad();
            List<Integer> coordenadasActual = 
                    ciudad.getPosicionDeEsquina(esquinaActual);
            List<Integer> coordenadasLlegada = 
                    ciudad.getPosicionDeEsquina(esquinaLlegada);
            if (coordenadasActual.get(0) == coordenadasLlegada.get(0) && 
                    coordenadasActual.get(1) == coordenadasLlegada.get(1))
                return true;
            return false;
        }

}


